Media streaming over the Internet is increasingly popular, but faces a variety of performance issues. One central problem involves maintaining a suitable transmission bandwidth in the face of dynamically changing network conditions.
In one scenario, a media source is connected to the Internet through a first service provider, a client device is connected through a second service provider, and the intervening network includes one or more transit points. Although transmission bandwidth between the media source and its service provider as well as between the client and its service provider may be sufficient to support streaming a requested media title at a desired quality level, one or more of the transit points through which the stream travels may be congested and represent a transmission bottleneck that limits the bandwidth between the media source and client device to below acceptable levels. Moreover, such congestion may be dynamic in nature, and need to be addressed repeatedly while streaming.
Therefore, a need exists for systems and methods to provide improved media streaming in the presence of network congestion.